package com.gxsyh.nantie.user.management.provider.domain;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;

import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import java.util.Date;

/**
 * @email yom535@outlook.com
 * @author: 刘锋嘉(Liu Fengjia)
 * @date: 2020/1/6
 * @time: 08:49
 * @Description:
 */
@Data
public class UserInfo {
    /**
     * 用户ID
     */
    @JsonSerialize(using= ToStringSerializer.class)
    @Id
    @Column(name = "userId")
    @GeneratedValue(generator = "JDBC")
    private Long userId;

    /**
     * 用户名或工号
     */
    @Column(name = "`userUsername`")
    private String userUsername;
    /**
     * 工号
     */
    @Column(name = "`userJobNumber`")
    private String userJobNumber;
    /**
     * 姓名
     */
    @Column(name = "`userName`")
    private String userName;

    /**
     * 补贴状态0是没有补贴，1是有补贴
     */
    @Column(name = "`userSubsidyStatus`")
    private Integer userSubsidyStatus;
    /**
     * 备注
     */
    @Column(name = "`userInfo`")
    private String userInfo;

    /**
     * 账户是否启用：0是不启用1是启用
     */
    @Column(name = "`userUserStatus`")
    private Integer userUserStatus;
    /**
     * 部门id
     */
    @JsonSerialize(using= ToStringSerializer.class)
    @Column(name = "`departmentId`")
    private Long departmentId;
    /**
     * 部门名字
     */
    @Column(name = "`departmentName`")
    private String departmentName;
    /**
     * 父级id
     */
    @Column(name = "`departmentParentId`")
    private Long departmentParentId;
    /**
     * 创建时间
     */
    @Column(name = "`departmentCreateTime`")
    private Date departmentCreateTime;
    /**
     * 部门类型
     */
    @Column(name = "`type`")
    private Integer type;

}
